#ifndef OHairFromMeshStripsModifier_H__
#define OHairFromMeshStripsModifier_H__

enum
{
	// Dynamic attributes defined on enum class PlugId
	hfms_PLUGS = 1000,
	
	//////////////////////////////////////////////////////////////////////////
	// Object attributes -- DO NOT CHANGE, attribute keys on saved projects
	hfms_START = 2000,
	
	hfms_InputMeshStrips,
	hfms_DistributionMethodAttribute,
	hfms_InheritTextureCoordinatesAttribute,
	hfms_RandomSeedAttribute,
	hfms_HairsPerStripCountAttribute,
	hfms_ViewPercentageAttribute,
	hfms_PointsPerStrandCountAttribute,
	hfms_UsePerStripStrandGroupsAttribute,
	hfms_AddStripIdChannelAttribute,
	hfms_RotationDirection,
	hfms_VolumeAttribute,
	hfms_VolumeNormalBiasAttribute,
	hfms_VolumeRampAttribute,
	hfms_IsUsingRenderCountAttribute,	// not used
	hfms_unused_long,
	hfms_HideMeshStrips,
	hfms_UniqueIdSequential,

	// Per Strip data
	
	hfms_StripCountOverride = 2100,
	hfms_StripDistributionMethodOverride,
	hfms_StripVolumeOverride,
	hfms_StripGroupOverride,
	hfms_StripRootBoundaryIndex,
	hfms_StripId,

	// Arrays
	
	hfms_StripCountOverride_Array = 2500,
	hfms_StripDistributionMethodOverride_Array,
	hfms_StripVolumeOverride_Array,
	hfms_StripGroupOverride_Array,
	hfms_RootBoundaryIndicesAttribute_Array,
	hfms_StripUniqueIds_Array,

	
	//////////////////////////////////////////////////////////////////////////
	// Buttons
	
	hfms_PerStrip_Group = 3000,
	hfms_MeshStrips_Group,
	hfms_RotateStrips_Button,
	hfms_StripOverrideReset_Button,
	
	hfms_DistributionMethod_PerVertex_Button,
	hfms_DistributionMethod_Uniform_Button,
	hfms_DistributionMethod_Random_Button,
	
	hfms_DistributionMethodOverride_PerVertex_Button,
	hfms_DistributionMethodOverride_Uniform_Button,
	hfms_DistributionMethodOverride_Random_Button,

	hfms_END
};

enum
{
	// Same order as HairFromMeshStripsGenerator::DistributionMethod
	hfms_DistributionMethod_PerVertex,
	hfms_DistributionMethod_Uniform,
	hfms_DistributionMethod_Random,
	//
	hfms_DistributionMethod_Count
};

enum
{
	hfms_RotationDirection_Rotate,
	hfms_RotationDirection_Flip,
	hfms_RotationDirection_FlowDown,
	hfms_RotationDirection_FlowUp,
	hfms_RotationDirection_FlowLeft,
	hfms_RotationDirection_FlowRight,
	hfms_RotationDirection_FlowBack,
	hfms_RotationDirection_FlowForward,
	hfms_RotationDirection_UvFlowDown,
	hfms_RotationDirection_UvFlowUp,
	hfms_RotationDirection_UvFlowLeft,
	hfms_RotationDirection_UvFlowRight,
};

#endif
